home *** CD-ROM | disk | FTP | other *** search
/ Garbo / Garbo.cdr / mac / comm / revrdist.sit / RevRdist / RevRdist src / pieces.c < prev    next >
Encoding:
Text File  |  1989-10-28  |  592 b   |  35 lines  |  [TEXT/KAHL]

  1. /*
  2.  * pieces.c - parts stolen from other THINK C libraries
  3.  * Needed because "smart-link" isn't.
  4.  * Naturally, this routines are copyright THINK Technology, Inc
  5.  */
  6. void    setmem(char *p, unsigned n, char c);
  7. char *    strchr(/* char *s, int c */ void);
  8.  
  9.  
  10. void setmem(p,n,c)
  11. register char *p;
  12. register unsigned n;
  13. register char c;
  14. {
  15.     while (n--)
  16.         *p++ = c;
  17. }
  18.  
  19.  
  20. char *
  21. strchr(/* char *s, int c */)
  22. {
  23.     asm {
  24.         movea.l    4(sp),a0        ;  A0 = s
  25.         move.w    8(sp),d1        ;  D1.B = (char) c
  26.         moveq    #0,d0            ;  D0.L = result
  27.         bra.s    @2
  28. @1        tst.b    (a0)+
  29.         beq.s    @3
  30. @2        cmp.b    (a0),d1
  31.         bne.s    @1
  32.         move.l    a0,d0
  33. @3    }
  34. }
  35.